package cn.dlc.com.config;

import org.springframework.context.annotation.Import;

import java.lang.annotation.*;

/**
 * 注解的保留位置
 * RetentionPolicy.SOURCE:这种类型的Annotations只在源代码级别保留,编译时就会被忽略,在class字节码文件中不包含。
 * RetentionPolicy.CLASS:这种类型的Annotations编译时被保留,默认的保留策略,在class文件中存在,但JVM将会忽略,运行时无法获得。
 * RetentionPolicy.RUNTIME:这种类型的Annotations将被JVM保留,所以他们能在运行时被JVM或其他使用反射机制的代码所读取和使用。
 */
@Retention(RetentionPolicy.RUNTIME)
// 说明该注解将被包含在javadoc中
@Documented
// Target用来指定这个注解可以用在哪里，比如ElementType.TYPE表示用在类上面
@Target(ElementType.TYPE)
//用来给springboot做自动注入的
@Import(UserImportSelector.class)
public @interface EnableUserBean {
}
